User control of objects

ABSTRACT

Methods and systems for providing user control of objects or vehicles simulated in a simulated environment or virtual world are described herein. The user control may include various types of touch controls that may be used by a player to move the object or vehicle in a direction and/or at a velocity. The user, in some embodiments, may be able to select which type of touch control is used in the user interface. In some arrangements, the touch control may include a touch zone arrangement that can be changed based on a condition of the virtual world or a player interaction with a user interface. Additionally, in some embodiments, the user control may include one or more controls for removing one or more statuses that may be received by the vehicle.

FIELD

Aspects of the disclosure relate to computer systems, computer software,and video games. More particularly, aspects of the disclosure relate tovideo game software, including aspects related to a user controlling anobject of the video game.

BACKGROUND

Video games are increasingly popular. Online multiplayer video gameshave become particularly popular due, at least in part, to the abilityof players to compete with multiple other human players.

Popular genres games include objects, such as vehicles or characters,that can be controlled by a player through a virtual world. To be ableto control the object through the virtual world, a player may beprovided with a mechanism and/or control scheme to provide input that isinterpreted and converted to commands that control the object. Forexample, players may commonly use a mouse, keyboard, gamepad, touchscreen or one of various types of joysticks to provide input. Playersoften desire a mechanism and/or control scheme that allows him or her toaccurately and reliably control the object through the virtual world.Improving accuracy and reliability of a mechanism and/or control schemecan improve a player's experience in the video game and improve his orher performance against other players.

SUMMARY

The following presents a simplified summary of various aspects describedherein. This summary is not an extensive overview, and is not intendedto identify key or critical elements or to delineate the scope of theclaims. The following summary merely presents some concepts in asimplified form as an introductory prelude to the more detaileddescription provided below.

Methods and systems for providing user control of objects or vehiclessimulated in a simulated environment or virtual world are describedherein. The user control may include various types of touch controlsthat may be used by a player to move the object or vehicle in adirection and/or at a velocity. The user, in some embodiments, may beable to select which type of touch control is used in the userinterface. In some arrangements, the touch control may include a touchzone arrangement that can be changed based on a condition of the virtualworld or a player interaction with a user interface.

For example, some aspects described herein relate to a method that maycomprise generating a user interface for a virtual world. The userinterface may include a touch control having a touch zone arrangement inwhich a user may press to control an object of the virtual world. Themethod may also comprise changing, responsive to a condition of thevirtual world or user interaction with the user interface, the touchcontrol to have a different touch zone arrangement. The condition of thevirtual world or user interaction with the user interface may include achange from a first viewing mode to a second viewing mode. The conditionof the virtual world or user interaction with the user interface mayinclude the user pressing within a touch zone of the touch zonearrangement. Changing the touch control to have the different touch zonearrangement may include increasing a size of a touch zone of the touchzone arrangement or may include decreasing a size of a dead zone of thetouch zone arrangement. The user interface may include a visualindicator indicating the direction and velocity the object is moving.The user interface may also include one or more object conditioncontrols operable in an active mode and a manual mode. The method mayfurther comprise removing an object status responsive to the objectreceiving a status and the one or more object condition controls beingin the active mode.

Additional aspects described herein related to a dissected touch controlthat includes a set of dissected touch control elements that can beseparately displayed from each other. For example, some embodiments mayinclude receiving a first gesture input from a user; responsive toreceiving the first gesture input, generating, as part of a userinterface for a virtual world, a first touch control element that isassociated with one or more first touch zones of a touch control inwhich the user may press to control an object of the virtual world;receiving first press input from the user within the one or more firsttouch zones; controlling the object based on the first press input;receiving a second gesture input from the user; responsive to receivingthe second gesture input, generating, as part of the user interface, asecond touch control element that is associated with one or more secondtouch zones of the touch control; receiving second press input from theuser within the one or more second touch zones; and controlling theobject based on the second press input.

Further aspects described herein relate to a touch control, such as thedissected touch control, that may be placed at different locations of auser interface. For example, some embodiments may include receiving afirst gesture input from a user; responsive to receiving the firstgesture input, generating, as part of a user interface for a virtualworld, a first touch control element of a dissected touch control at afirst location; controlling an object of the virtual world based on thefirst touch control element; receiving a second gesture input from theuser; responsive to receiving the second gesture input, generating, aspart of the user interface, a second touch control element of thedissected touch control at a second location different from the firstlocation; and controlling the object based on the first touch controlelement.

Yet further aspects may relate to one or more controls for removing oneor more statuses that may be received by the vehicle as it travelsthrough the virtual world.

The methods described herein may be performed based on instructionsstored on a statutory computer readable medium, or executed by a virtualenvironment server configured to perform as described herein.

These and other aspects will be apparent upon reading the detaileddescription below.

BRIEF DESCRIPTION OF THE DRAWINGS

A more complete understanding of the present invention and theadvantages thereof may be acquired by referring to the followingdescription in consideration of the accompanying drawings, in which likereference numbers indicate like features, and wherein:

FIG. 1 is an illustrative network environment in which one or moreaspects described herein may be used.

FIG. 2 is a block diagram illustrating an example virtual world clientaccording to one or more aspects described herein.

FIG. 3 is a block diagram illustrating an example virtual world serveraccording to one or more aspects described herein.

FIG. 4 illustrates a block architecture diagram of software modules thatmay be used to implement various features described herein.

FIG. 5A illustrates an instance of a character object according tovarious features described herein.

FIG. 5B illustrates an instance of a vehicle object according to variousfeatures described herein.

FIGS. 6A and 6B illustrate example screenshots of two embodiments for avideo game user interface implementing different aspects of usercontrol.

FIG. 7 illustrates example diagrams of touch zones for controlling anobject of a virtual world in accordance with embodiments of a touchcontrol and other aspects described herein.

FIG. 8 illustrates an example screenshot of a video game user interfaceproviding a zoom or sniper mode for viewing the virtual world inaccordance with various aspects described herein.

FIG. 9 illustrates example diagrams depicting touch zones for a touchcontrol being adjusted or changed based on switching viewing modes inaccordance with one or more aspects described herein.

FIG. 10 illustrates an example diagram depicting touch zones of a touchcontrol being adjusted or changed based on a player pressing the touchcontrol, in accordance with various aspects described herein.

FIGS. 11A-11O illustrate example screenshots of a video game userinterface implementing different aspects of user control in accordancewith one or more aspects described herein.

FIG. 12 illustrates an example diagram of touch zones for controlling anobject of a virtual world in accordance with a dissected touch controland other aspects described herein.

FIGS. 13A-13N illustrate example screenshots of a video game userinterface implementing different aspects of user control in accordancewith one or more aspects described herein.

FIG. 14 illustrates an example method of providing a user interface to avirtual world that includes at least two types of touch controlaccording to various aspects described herein.

FIGS. 15A-15H illustrate example screenshots of a user interface thatincludes aspects related to user control over vehicle conditions orstatuses in accordance with one or more aspects described herein.

FIG. 16 illustrates an example method of providing a user interface to avirtual world that includes one or more user controls over vehicleconditions or statuses in accordance with various aspects describedherein.

DETAILED DESCRIPTION

In the following description of the various aspects, reference is madeto the accompanying drawings, which form a part hereof, and in which isshown by way of illustration how various features described herein maybe practiced. It is understood that other embodiments may be used andstructural and functional modifications may be made.

FIG. 1 illustrates a network environment in which clients 101 mayinteract with virtual world servers 105 to provide a virtual world forusers to access. Clients 101 may include a variety of devices includinggeneric data processing device 101 a, personal computer (PC) 101 b,laptop, portable, or netbook computer 101 c, personal data assistant,mobile phone or device 101 d, a tablet device (not shown) and the like.Each of clients 101 may have a network adapter (and software) thatallows clients 101 to connect to virtual world servers 105 throughnetwork 100. In one example, network 100 may include an InternetProtocol (IP) based network, e.g., the Internet. Other networks mayinclude cellular networks, cable networks, fiber optic networks,wireless networks, wired network and/or combinations thereof. Network100 may further include one or more sub-networks such as wired orwireless local area networks (LANs), wide area networks (WANs), and thelike.

In one or more arrangements, virtual world servers 105 may be includedin a virtual world server system 103 that includes multiple linkedphysical and/or logical servers 105. Using such a distributed system,servers 105 may be able to distribute load across each of server 105.For example, if server 105 a is experiencing high loads, some of theoperations may be passed to either server 105 b or 105 c or both. Loadmay further be distributed based on user geography or on otherpredetermined bases. Alternatively, the virtual world may be hosted on asingle server, e.g., virtual world server 105 a. Each of servers 105 maycollectively generate and manage a single instance of the virtual world,or each server 105 a, 105 b and 105 c may provide independent instancesof the world. An instance of a virtual world, as used herein, describesa stand-alone instance of the virtual world that does not interact withor depend on other instances of the virtual world. Depending on theprocessing load, a virtual world server system 103 may divide aplurality of users among multiple instances of the virtual world, toreduce or alleviate overloading on a single server or preventoverpopulation. Each server 105 may be logical or physical, e.g.,multiple logical servers may reside and be running on the same physicalcomputing device/server, or servers may be physically separate devices.

The network environment of FIG. 1 may also associate with one or morematchmaking servers 106. As used herein, a matchmaking server 106 maydetermine what set of players to assign to a same instance of thevirtual world to ensure that all players meet predefined criteria forthat instance of the virtual world.

In addition to or alternatively from the virtual world server 105 aand/or the one or more matchmaking servers 106, other servers may beused in the network environment. For example, another server (not shown)may be used to manage user logins; and yet another server (also notshown) may be used to store account data. The servers included in thenetwork environment may be organized in various ways, such as a servercenter, periphery, central server with a number of peripheral devices,and the like.

FIG. 2 illustrates an example client device 200 such as PC 101 b(FIG. 1) that may be used to access and interact with a virtual worldprovided by a virtual world server such as server 105 a of FIG. 1.Client device 200 may include a variety of components and modulesincluding a processor 217, random access memory (RAM) 215, read onlymemory (ROM) 213, databases 201 and 203, client software 205, outputadapter 211, input interface 209 and communication interface 207.Software, databases, operating systems, and the like may be stored innonvolatile memory 206 (e.g., a magnetic disk or solid state hard drive,or equivalent). Object database 201 may be configured to store datadefining and otherwise associated with an object used by a user ofdevice 200 to explore and interact with the virtual world. Worlddatabase 203, on the other hand, may be configured to store data fordefining and generating the environment in which the objects exist. Forexample, world database 203 may store texture maps for rendering a flooror ground, walls, a sky and the like. In another example, world database203 may store simulated environments, buildings, trees and other datadefining animate or inanimate objects existing in the world, datadefining computer controlled characters and the like. Each of database201, 203 may or may not be a conventional database, and instead mayrefer to data stored in a memory, accessed as needed by the clientsoftware. Data associated with an object or the virtual world may becommunicated between client device 200 and a virtual world server usingcommunication interface 207. For example, object positions, attributesand status may be updated or environments may be changed bycommunicating such data through interface 207.

The world and the objects may be graphically rendered by client software205 and subsequently sent to output adapter 211 and display 219. Theclient software 205 may, in one or more arrangements, be configured togenerated three dimensional (3-D) models of the virtual world andcomponents thereof as well as the object corresponding to a user. A usermay control the object and interact with the world through inputinterface 209 using various types of input devices including keyboard223, mouse 225, and one or more touch sensors 227 that sense when a userhas pressed his or her finger at various locations, such as location229. In some embodiments the one or more touch sensors 227 may beincluded in a touch pad, touch screen or the like. Devices that includeone or more touch sensors 227 may detect various gestures performed by auser as one or more of his or her fingers are pressed onto the one ormore touch sensors 227 (or the touch pad, touch screen, etc.). There arevarious types of touch sensors that a device may use, includingcapacitive touch sensors and resistive touch sensors. Some touch sensorsmay be usable with a stylus and a user may use the stylus instead of hisor her finger to provide input to the touch sensor. Additionally, sometouch sensors may be able to detect a single touch, while other touchsensors may be able to detect multiple touches at a given time. Othertypes of input devices may include a microphone (e.g., for voicecommunications over the network), joysticks, motion sensing devicesand/or combinations thereof. In one or more arrangements, music or otheraudio such as speech may be included as part of the virtual world. Insuch instances, the audio may be outputted through speaker 221.

Client software 205, computer executable instructions, and other dataused by processor 217 and other components of client device 200 may bestored RAM 215, ROM 213, nonvolatile memory 206 or a combinationthereof. Other types of memory may also be used, including both volatileand nonvolatile memory. Software 205 may provide instructions toprocessor 217 such that when the instructions are executed, processor217, client device 200 and/or other components thereof are caused toperform functions and methods described herein. In one example,instructions for generating a user interface for interfacing with thevirtual world server may be stored in RAM 215, ROM 213 and/ornonvolatile memory 206. Client software 205 may include bothapplications and operating system software, and may include codesegments, instructions, applets, pre-compiled code, compiled code,computer programs, program modules, engines, program logic, andcombinations thereof. Computer executable instructions and data mayfurther be stored on some physical form of computer readable storagemedia (referred to herein as “computer memory”) including, e.g.,electrically erasable programmable read-only memory (EEPROM), flashmemory or other memory technology, CD-ROM, DVD or other optical diskstorage, magnetic cassettes, magnetic tape, magnetic storage and thelike.

Referring now to FIG. 3, a virtual world server 300 (e.g., an instanceof server 105) may be configured to generate and operate a massivemultiplayer online game, such as virtual world or the like. Server 300may include processor 301, ROM 303, RAM 305, communication interface307, object position database 309, world database 311, user database313, server software 317, and a statistics database 312. Object positiondatabase 309 may be configured to store position information for eachobject (e.g., based on commands to move a vehicle received from eachclient). The statistics database 312 may be configured to store and/ortransfer statistics relevant to game operation, including, for example,tracking player achievement and general game server performance.

A world database 311 may store rules, algorithms and other data forinteractions that are available in the world. For example, a manner inwhich a computer controller character moves or otherwise behaves may bedefined in data stored in world database 311. Additionally, iteminformation may be defined in world database 311 so that items may notbe modified by each client. In another example, world database 311 maystore location information for non-object items and components. Userdatabase 313, on the other hand, may be configured to store informationdescribing a user controlling an object. For example, user database 313may include account information, user preferences, one or more classesof user experience points and/or levels, payment information, useridentification information, character definitions, state tables, and thelike. Each of databases 309, 311, 312, 313 may or may not be aconventional database, and instead may refer to data stored in a memory,accessed as needed by the server software. For example, user database313 may in fact be a collection of multiple databases or databasetables.

Features described herein may be used with or in a variety of videogames, including but not limited to, WORLD OF TANKS® by Wargaming.net®.Aspects described herein may also be used with other video games and arenot limited to any one genre or implementation. Aspects described hereinmay be implemented in video game application software stored on acomputer readable medium, e.g., storage 201, 203, 205, 206, 213, 215,309, 311 312, and/or 313, and executable by a data processing device.

Various aspects of the disclosure provide features and capabilities thatenhance game play by providing options through which users can developstrategies to play the video game. According to various aspectsdescribed herein, a video game may provide a graphically simulatedvirtual world or virtual environment, in which the game takes place,referred to herein interchangeably as a virtual world and as a simulatedenvironment of the video game. The simulated environment may havefeatures similar to actual geographic locations or may have fictional,science fiction or fantasy-themed environments.

FIG. 4 illustrates a block diagram of a video game software application401. Each block in FIG. 4 illustrates a logical software module orfunction that performs an action, provides a capability or feature,implements an object, or performs some other aspect of the video game.When the video game software 401 executes on a data processing systemsuch as a PC or game console, the modules operate collectively toprovide a video game experience to a player. The modules illustrated inFIG. 4 are illustrative only, and additional or different modules may beused. The same, additional or different modules may be executed intandem on a server with which each client device is connected.

Video game software 401 may include, e.g., a game manager module 402,which manages the overall operation of the video game and may be theinitial module launched when the video game is executed. Video gamesoftware 401 may also include a network module 403, which managesnetwork games sessions and communication with one or more game servers.A network game session may include e.g., a co-operative campaign withother networked players, or other compartmentalized periods of game playinvolving players located at discrete network locations. A memorymanager module 409 performs memory management during execution of thevideo game 401. An input module 404 may receive and interpret user inputvia a game controller, keyboard, mouse, and the like, and provide theinterpreted commands to game manager 402, network module 403, or otherapplicable module. UI module 405 may manage and control the userinterface, including the display displayed on the video output device,interpreting input via the input module 404, and providing audio outputvia audio module 408.

Various software modules may operate with one or more classes or objectsdefined and used in the video game 401. The classes and objects may bedefined with reference to an object module 410, and may include portionsof executable software code and/or one or more data structures,depending on the object. Each object may be rendered and simulated inthe virtual world in accordance with a physics engine 407. Video gamesoftware 401 may include other software modules 411 as needed. FIG. 4illustrates one possible software architecture. Others may be used. Eachmodule depicted in FIG. 4 may communicate directly or indirectly witheach other module, e.g., by passing objects, data, parameters, input,and output, etc.

A first class of in-game objects may define characters in the videogame. Characters may be defined by various attributes associated withthe character, e.g., name, physical appearance, skills, etc. Skills maybe defined based on a character's avatar, genre or task, e.g., gunners,tank commanders, and drivers in the present example. A gunner may haveskills such as aiming accuracy and aiming speed, a tank commander mayhave skills that regulate the overall efficiency of the tank crew, adriver may have skills that determine the vehicle speed or precision ofdirection. Additional character attributes may include one or more otherskills that can improve performance of the character or vehicle so as toenhance the strategic gaming experience such as firefighting skills, theability to repair vehicles, the ability to camouflage vehicles, and thelike.

A second class of in-game objects may define vehicles in the video game.A vehicle may be defined as any simulated inanimate object directly orindirectly controllable by or dependent on an in-game character oruser/player. Illustrative vehicles may include tanks, airplanes, ships(and/or submarines), and the like. Vehicles may have various attributesand functions that provide advantageous qualities to the vehicle duringcombat. For example, some vehicles might be fast with minimal firepower,whereas other vehicles may be slower but extremely powerful. Infinitevariations of strength, speed, defense, and any other attribute arepossible.

Object module 410 may provide an array of vehicles, vehicle components,characters and other equipment. Vehicles, vehicle components, charactersand other equipment may be defined by one or more objects andinstantiated during the game. Each object may have various attributesand functions and provide advantages and disadvantages based thereon. Avehicle component may refer to an upgradeable component of a vehicle,e.g., armor plating, engine, guns, etc.

FIG. 5A illustrates a block diagram of an instance 501 of a characterobject. Object instance 501 has an object class 505 (Character).Instance 501 may acquire one or more attributes from the object class.Attributes 507, when examined, define a state of the instance. In thisexample, the Character has the following attributes: Name 511,Qualification 512, Training Level 513, and Competence 514. A charactermay also have additional skill types 509. Additional skill types mayinclude Repair Skills 515, Firefighting skills 516, and Camouflageskills 517. Other skill types, attributes, etc., may also oralternatively be used.

Each attribute may have a particular value. The attribute may have adefault value inherited from the Qualification type 512. For someattributes, a player may increase attribute value by allocatingexperience points, gained during gameplay, to the character. Increasedattribute value enhances gameplay by improving performance of thevehicle containing the characters. For example, by allocating experiencepoints to the gunner of a tank, the Training Level 513 may be increasedresulting in more accurate gun pointing by a vehicle containing thatcharacter, leading to improved vehicle performance during battle.Similarly, the effectiveness of the additional skill types is increasedin accordance with the value of the skill. Thus, for example, aFirefighting skill 516 value of 100% is proportionally more effectivethan a value of 50%. Increased firefighting effectiveness results inreduced damage to the vehicle in the event of a fire. By staffing avehicle with characters having improved attributes and skills, vehicleperformance is maximized allowing for a more effective performanceduring game play.

In some embodiments, attributes might not be able to be changed.Qualification 512 may not be changed; for example, a driver may not beretrained as a gunner. A character's Competence attribute 514 refers totheir ability to operate a specific vehicle type; for example a specifictype of tank such as the M3 Stuart tank. Competence 514 may be changedby retraining the character to operate the same Qualification 512 on adifferent vehicle. Changing Competence 514 may result in a decreasedTraining Level 513 in the new vehicle. Additional experience points maybe used to raise the Training Level 513 in the new vehicle. A charactermay eventually be associated with multiple competence attributes—one pervehicle the character has been associated with.

FIG. 5B illustrates a block diagram of an instance 551 of a vehicleobject. Object instance 551 has an object class 555 (Vehicle). Instance551 may acquire one or more attributes 557 from the object class.Attributes 557, when examined, define a state of the instance. In thisexample, object instance 551 is a Liechttraktor Tank and has attributesassociated with tank properties. Exemplary attributes include Name 561,Hit Points 563, Weight/Load limit 564, Engine Power (h.p.) 565, SpeedLimit 566, Hull Armor 567, Turret Armor 568, Standard Shell Damage 569,Standard Shell Penetration 570, Rate of Fire 571, Turret Traverse Speed572, View Range 573, and Signal Range 574. These attributes contributeto the vehicle's effectiveness in combat. Attribute types may also havean attribute value, which determines the effectiveness of the attributefunction. For example, the Speed Limit attribute 566 has a value of 46km/h, which indicates how fast the vehicle can travel. One or more ofthe attributes, alone or in combination, may be used to assign thevehicle to a subclass. In this example, vehicle 551 may be in a subclassof tanks referred to as “Light Tanks” based on hit points, speed, armor,etc. Other classes of tanks may include medium tanks and heavy tanks,among others. Subclass may be used to quickly identify to a user ageneral approximation of attributes associated with a vehicle withoutrequiring the user to review each attribute in detail.

Aspects of the disclosure involve providing a user with different viewsof a virtual world or three-dimensional simulated environment. Aspectsof the disclosure also include providing the user with additionalinformation or interactive controls in the different views of theenvironment and gameplay information.

A player or user can provide input to manipulate or control an object ina virtual world or three-dimensional simulated environment or changeviews of the virtual world or simulated environment through the inputmodule 404 of video game software 401 which can communicate with avirtual world server 300 such as a virtual environment server 105. Theinput module 404 can pass the user input to the other modules includingthe UI module 405 to cause changes in the environment or views to bedisplayed on a display device in response to the user input. Throughmanipulation of an object in the environment such as a vehicle orcharacter, the user can interact with the simulated environment and viewdifferent portions of the environment. The user can further view theenvironment through a number of different viewpoints and viewing rangesincluding a first-person view and a third-person view, and the user canchange between different viewing modes and/or viewpoints. For example,if the controlled object is a tank vehicle, the player's point of viewmay be a first-person view from the viewpoint of a character located inthe vehicle or a third-person view from a point a short distance behindthe user controlled character or vehicle. The distance for thethird-person view from behind the user controlled character or vehiclecan vary depending on the terrain and viewing modes. The direction ofthe player's view of the environment may be controlled together with thedirection in which a weapon is aimed. The direction of the player's viewof the environment may also be changed independently of the direction ofa weapon. The player can further control the character or vehicleindependently of the direction of the view such that the forwarddirection for a player's character or vehicle may be in a directiondifferent than the direction of the view being displayed.

Various examples described throughout this disclosure will be describedin terms of a user or player touching or pressing onto a control. Suchembodiments may include a device with a touch screen that allows a useror player to press his or her finger (or a stylus or other item that canbe detected by a touch sensor of the touch screen) onto the touch screento provide touch and/or gesture input. When terms such as touch, press,or gesture are used, it can be understood that the computing device isdetecting the touch and/or gesture input via one or more touch sensorsand/or one or more processors of the computing device. For example, oneor more touch sensors may detect a user's touch and provide a signal tothe one or more processors representing the touch. The one or moreprocessors may process the signal to determine a location of the touchand/or a direction of the touch. Based on one or more signals receivedfrom the touch sensor, the one or more processors may determine that agesture is being performed by the user (e.g, the user may be swiping ordragging his or her finger across the touch screen). Software, such asthe video game application (see e.g., FIG. 4), may have access to thetouch and/or gesture input (e.g., via the operating system of thedevice) and may perform additional processing to interpret the touchand/or gesture input. Some instances may include processing the touchand/or gesture input based on a user interface being displayed to theuser and responding to the touch and/or gesture input by updating theuser interface and/or controlling an object of the virtual world).

The various examples described throughout this disclosure are not meantto be limited to a touch screen device or a similar device with a touchsensor. Aspects of the disclosure may be used in a device that has adisplay screen and a different input device, such as a keyboard ormouse.

FIGS. 6A and 6B illustrate example screenshots of two embodiments for avideo game user interface implementing different aspects of usercontrol. In particular, FIG. 6A illustrates a view of a virtual world600 and an interface for controlling a vehicle object 610 of the virtualworld 600. FIG. 6B illustrates a view of a virtual world 600′ and aninterface in accordance with an alternative embodiment of the presentdisclosure.

Referring to FIG. 6A, vehicle object 610 may have independentlycontrollable and movable parts such as a turret 612 and a hull 614.Turret 612 and hull 614 of vehicle object 610 may independently pivotwith respect to each other. A second vehicle (not shown) may be locatedin the environment such as an enemy vehicle. A reticle or sight guide620, which may be used to assist in targeting and aiming, may bedisplayed to provide the player with information regarding thedirection, distance, and point at which a weapon (e.g., a gun, missile,or other projectile weapon) may be directed. A point of aim 622 may beprovided to indicate the specific point at which the weapon is aimed(e.g., the point at which the weapon barrel of turret 612 is pointing).

The user may be able to press on the environment to move the cameraangle (also referred herein as an “environmental control”). The user mayalso be able to use camera control 625 to move the camera angle. In someembodiments, pressing on the environment to move the camera angle mayalso cause the point of aim 622 (which may be the direction the weaponbarrel of turret 612 is currently pointing) to move, for example, suchthat the point of aim 622 is centered on the reticle 620. However, usingcamera control 625 may move the camera angle, but the point of aim 622may remain in its previous position. In this manner, the user may beable to move the camera to view other portions of the virtual world, buthave the weapon barrel of turret 612 remain pointing at its currenttarget. In some embodiments, after a user stops pressing on cameracontrol 625, the camera may move back so that the point of aim 622 is atthe center of reticle 620. More fully, some embodiments are arranged sothat when a user stops pressing on the environment to move the camera,turret 612 may be moved (or continue moving) until point of aim 622 isaligned with the center of the reticle 620, but when a user stopspressing on camera control 625, the camera may move until the center ofthe reticle 620 is aligned with the point of aim 622. Such anarrangement, for example, may allow for a user to use the environmentalcontrol to move the camera when adjusting aim to a target, such as anenemy vehicle, (or to aim at a new target) and to use the camera control625 when already aiming at a target to view if other targets are aroundby using camera control 625.

Various other controls may be provided that a player may be able totouch or press to cause particular information to be displayed in theinterface (e.g., display a menu) or to cause particular actions to occurin the virtual world 600 (e.g., fire a weapon), such as, for example,fire weapon controls 624A and 624B, ammo select control 626, zoomcontrol 628 (also referred herein as sniper mode control 628), menucontrol 608, and touch control 630.

Referring to FIG. 6B, which illustrates an alternative embodiment of aninterface with respect to virtual world 600′, components of theinterface that are similar to the embodiment of FIG. 6A have been givena corresponding number. For example, the interface of FIG. 6B includessimilar components as vehicle object 610′, turret 612′ and hull 614′.Also included in the interface of FIG. 6B is reticle 620′, point of aim622′, fire weapon controls 624A′ and 624B′, ammo select control 626′,zoom control 628′, and menu control 608′. The interface of FIG. 6Billustrates a number of different graphical overlays from the interfaceof FIG. 6A. For example, touch control 630 of FIG. 6A includes agraphical overlay different than touch control 630′ of FIG. 6B.

FIG. 7 illustrates example diagrams of touch zones for controlling anobject of a virtual world in accordance with embodiments of the touchcontrol described herein. The example touch zones depicted in FIG. 7 canbe used with either touch control 630, touch control 630′, or othervariations of touch controls. In addition to the example touch zonesdepicted in FIG. 7, FIG. 7 also provides a close up view of touchcontrol 630 and touch control 630′, each of which may be operated by aplayer in a manner similar to an analog stick on a game pad.

As illustrated, touch control 630′ includes a touch pad 706 that theuser may press and drag in a particular direction. Touch control 630′may include a number of direction indicators 708 (as illustrated, touchcontrol 630′ includes eight direction indicators 708). Each directionindicator 708 may represent the various touch zones that form a basis ofthe touch control's functionality and each direction indicator 708 mayrepresent a direction in which the object may be controlled. Forexample, if a user pressed on touch pad 706 and drags touch pad 706 uptowards the top of touch control 630′ (e.g., in the direction of the topdirection indicator), a controlled vehicle may move forward.

As illustrated, touch control 630 includes a touch pad 702 that the usermay press and drag in a particular direction (which may be functionallysimilar to touch pad 706). Touch control 630 may include a number ofdirection indicators 704 (which may be functionally similar to directionindicators 708). Touch control may also include turning zone indicators703A and 703B, which provide a visual indication to the user where thetouch pad 702 can be moved to turn or pivot the controlled vehicle.

In various arrangements, the area of the turning zone indicators 703Aand 703B may or may not match with the area of an underlying touch zone.For example, comparing the area of turning zone indicator 703A to thearea of touch zone 712G of touch zone arrangement 710, it can be seenthat the turning zone indicator 703A does not match or align with touchzone 712G. In an alternative embodiment, however, the turning zoneindicators 703A and 703 may match or align with the underlying touchzones (not shown). Additionally, if turning zone indicators 703A and703B both matched or aligned with their respective underlying touch zone(e.g., the underlying touch zones matched the area of indicators 703Aand 703B), the touch zones may be arranged to be symmetrical or mirrorimages of each other.

Some embodiments that have turning zone indicators misaligned with therespective touch zones may include symmetrical or mirror image touchzones. Touch zone arrangement 720 of FIG. 7 illustrates an embodimenthaving touch zones that are symmetrical with or mirror images of eachother, but are misaligned with turning zone indicators of the graphicaloverlay. Alternative and additional details on various touch zonearrangements that can be used will be discussed below.

Further details as to how a controlled vehicle is controlled (e.g.,moved) in response to a player moving a touch pad, such as thosedepicted by touch pad 702 and 706, will be discussed below. Moreover, inthe examples described throughout this disclosure, embodiments of thetouch control will be discussed in terms of a particular touch zonearrangement (e.g., touch zone arrangement 710). While many of theexamples herein may be discussed in terms of touch zone arrangement 710,this is done for simplicity. Many aspects described herein could beperformed using touch zone arrangement 720 (or a different variation ofarrangement 720 or 710) instead of arrangement 710. Additionally, whilemany of the examples herein will be discussed in terms of controlling ahull of a vehicle, a similar touch control could be used to causeanother part of the controlled vehicle to move. For example, a touchcontrol arranged similar to those depicted in FIG. 7, could be used tocontrol the turret 612 of vehicle object 610, such as by allowing aplayer to rotate the turret 612 in a direction determined by thedirection a player moves touch pad 702.

Many of the examples discussed herein will allow a user to control thehull of the vehicle (e.g., hull 614 of vehicle object 610) byinteracting with the touch pad of the touch control. For example, aplayer may move touch pad 702 in a particular direction such that thetracks of a controlled tank are caused to move in particular directions(e.g., to move the hull of the tank forward or backward; to move thetracks of the tank in the same direction as each other, but at differentspeeds, such that the hull of the tank turns clockwise orcounter-clockwise while moving forward or backward; to move the tracksof the tank in the opposite directions from each other to perform apivot-turn where the tank turns clockwise or counter-clockwise while notmoving forward or backward).

A sample touch zone arrangement 710 is illustrated in FIG. 7 and definesthe zones in which a player may press to control the vehicle (e.g.,cause the vehicle to move in different directions and/or velocities).The number and arrangement of the direction indicators 704 on touchcontrol 630 may depend on the touch zones defined for touch control 630.As illustrated, there are eight direction indicators 704 for touchcontrol 630 and there are eight different touch zones: 712A-710H. Thetouch zones 712A-712H may be of different shapes and sizes.

In some arrangements, the shape of a touch zone may depend on how aplayer is likely to press and move his or her finger while interactingwith the device displaying the virtual world. For example, touch zonearrangement 710 may be an arrangement used when touch control 630 is inthe left side of a display screen (see, e.g., FIGS. 6A and 6B). When inthe left side of a display, a player is likely to interact with touchzone 630 using the thumb of the left hand. A player may be able toeasily move his or her left thumb horizontally from the center of touchzone 630 to the right (e.g., in the direction of touch zone 712C), butit may be more difficult to move horizontally from the center of touchzone 630 to the left (e.g., in the direction of touch zone 712G).Accordingly, touch zones may be shaped and arranged to accommodate thatphysical movement (or others). As one particular example, touch zone712C and touch zone 712G are of different shapes with the top edge oftouch zone 712C being horizontal while the top edge of touch zone 712Gis not horizontal (and instead is angled downwards). Such an arrangementmay accommodate the difference in moving the left thumb to the right orto the left.

As illustrated in FIG. 7, touch zone arrangement 710 may also include adead zone 714 in which a player's presses or touches does not cause thecontrolled vehicle to move. In some embodiments, the dead zone 714 maybe a circle (not shown) or other geometric shape. The dead zone 714 maybe shaped asymmetrically and/or differently with respect to one or moreof touch zones 712A-712H (as shown) or with respect to one or moredirections that the dead zone extends in.

The arrangement of touch and/or dead zones for a touch control may bedynamic based on the conditions of the virtual world or based on inputreceived from a player (e.g., a player's interaction with the userinterface). In other words, the arrangement of touch and/or dead zonesmay be adjusted or changed in response to occurrence of a particularaction in a virtual world or in response to particular input beingreceived from a player.

For example, some embodiments may adjust or change touch zones of atouch control based on which viewing mode is active. A virtual world mayhave different viewing modes that, in some embodiments, may beselectable by a player (e.g., FIG. 6A illustrates a video game interfacefor a first viewing mode and pressing zoom control 628 may change thevideo game interface into a second view mode). FIG. 8 illustrates avideo game interface for another viewing mode. In particular, FIG. 8illustrates an example screenshot of a video game user interfaceproviding a zoom or sniper mode for viewing the virtual world. The zoomor sniper mode may be presented in response to a player pressing zoomcontrol 628 when the zoom or sniper mode is inactive. The zoom or snipermode may be exited or closed by pressing zoom control 628 when the zoomor sniper mode is active.

Some aspects of the interface when in the zoom or sniper mode aredifferent from the interface illustrated in FIG. 6A. For example, whilein the zoom or sniper mode, the player may be presented with a moredetailed or magnified view of a selected area of the virtual world. Insome instances, the zoom or sniper mode may increase the ease of aimingand accuracy as compared to other modes of viewing the virtual world.Some aspects of the interface when in the zoom or sniper mode aresimilar to or the same as the user interface illustrated in FIG. 6A. Forexample, the user interface may include one or more of the same controlsas the user interface illustrated in FIG. 6, including, touch control630 and zoom control 628. Additional aspects of the snipe mode,including some aspects related to vehicle indicator 810 will bediscussed below.

FIG. 9 illustrates example diagrams depicting touch zones for a touchcontrol being adjusted or changed based on switching viewing modes. Inparticular, FIG. 9 illustrates an example in which the touch zones oftouch control 630 may be changed when switching from a first viewingmode, such as the one illustrated in FIG. 6A, to a second viewing mode,such as the one illustrated in FIG. 8. FIG. 9 also illustrates anexample in which the touch zones of touch control 720 may be changedwhen switching from a first viewing mode, such as the one illustrated inFIG. 6A, to a second viewing mode, such as the one illustrated in FIG. 8

When in the first viewing mode, touch zone arrangement 710 may be usedby the touch control (e.g., touch control 630). However, when theviewing mode changes (e.g., by the user pressing zoom control 628), thesecond viewing mode may be activated and touch zone arrangement 910 maybe used by the touch control when in the second viewing mode. The changefrom touch zone arrangement 710 to touch zone arrangement 910 may beperformed without the user being aware of the change. Touch zonearrangement 910 may include touch zones 912A-912H and dead zone 914.Compared to zones 712A-712H of touch zone arrangement 710, the sizeand/or arrangement of zones 912A-912H may be different. For example,touch zone 912A and 912E may be larger than corresponding zones 712A and712E of touch zone arrangement 710. As also illustrated in FIG. 9, thetouch zones of touch control 720 may be changed or adjusted based on achange in view mode.

In some arrangements, increasing the size of a touch zone when in thesecond mode may lower a player's error rate. For example, when in thezoom or sniper mode illustrated in FIG. 8, a player is more likely towant to keep aiming in a similar direction (or at the same target) whenin the zoom mode. Thus, a player is more likely to desire to move thevehicle forward or reverse when in the zoom mode as compared to theother available directions in order to maintain vehicle orientation andkeep aiming in a similar direction. Accordingly, the size of touch zone712A and 712E of touch zone arrangement 710 are increased, resulting intouch zones 912A and 912E. Such an increase may result in loweringoccurrences of player error in moving the vehicle in the forward orreverse direction.

The shape and size of the dead zone may be adjusted based on variousconditions of the virtual world or based on certain player input (e.g.,a player's interaction with the user interface). For example, withrespect to if the player moves touch pad 712 in a particular direction(e.g., towards and into touch zone 712A), the dead zone 714 may adjustby, for example, decrease to cause the touch zone in that particulardirection increase (e.g., increase the size of touch zone 712A) into aportion previously assigned to the dead zone.

The change in touch zones for touch control 720 that is illustrated inFIG. 9 also depicts an increase in the size of touch zones 722A and 722E(compare 722A to 922A and compare 922E to 722E). Various zones may alsodecrease in size based on the change in viewing mode. For example, Touchzones 722G and 722C are also depicted as decreasing in size based on thechange in viewing mode. Touch zones 722B, 722D, 722F and 722H are alsoshown as decreasing in size (see resulting zones 922B, 922D, 922F and922H, respectively). Additionally, by inspecting FIG. 9 to identifywhere zones 722B, 722C, 722D, 722F, 722G and 722H were decreased in sizeby the change in viewing mode, it can be seen that the decrease in sizemay correspond to the increase in size of zones 722A and 722E. Forexample, the expansion of 922A and 922E towards the center of the touchcontrol caused a first portion of zone 922C to decrease in size but,because zones 922H and 922F did not increase in size, a second portionof zone 922G was unaffected by the zone change.

FIG. 10 illustrates an example diagram depicting touch zones for a touchcontrol being adjusted or changed based on a player pressing the touchcontrol. As illustrated by FIG. 10, prior to a player pressing withintouch zone 712A, touch zone arrangement 710 may be used. However, whenthe user presses within touch zone 712A, touch zone arrangement 1010 maybe used, which includes touch zones 1012A-1012H. The change from touchzone arrangement 710 to touch zone arrangement 1010 may be performedwithout the user being aware of the change. As compared to touch zone712A, touch zone 1012A may be of an increased size to allow a player tohave more precise movements within touch zone 1012A (the shapes of thezones have also changed in the illustrated example). Touch zonearrangement 1010 may be used, for example, while the player continues totouch within touch zone 1012A. When the user enters or presses withinanother touch zone (e.g., any of zones 1012B-1012H), enters the deadzone 1014, or otherwise stops pressing within touch zone 1012A, thetouch zone arrangement being used may change again. In some embodiments,the touch control may change from using touch control arrangement 1014and back to touch control arrangement 710 when the player enters orpresses within another touch zone, enters the dead zone, or otherwisestops pressing within touch zone 1012A.

As the player experiences the virtual world such as, for example, bycontrolling the vehicle to different locations within the virtual world,the user interface and/or virtual world may provide the player withdifferent visual cues to indicate how the vehicle is being controlled.FIGS. 11A-11N illustrate example screenshots of a video game userinterface implementing different aspects of user control in accordancewith one or more aspects described herein, and each screenshot depictsone or more visual indications related to user control of a vehicle orobject. While the user interfaces depicted in FIGS. 11A-11N may includesome common elements as the interfaces depicted in other figures, suchas FIG. 6 and FIG. 8, and/or some different elements, the followingdiscussion of FIGS. 11A-11N will highlight one or more visual cues orindicators present in each Figure and describe various aspects relatedto user control of the vehicle in the virtual world. In particular, eachof FIGS. 11A-11N includes touch control 630, which is used in theseexamples to control the hull of the vehicle. While the below exampleswill describe specific manners in which a vehicle is controlled incertain directions (e.g., move forward, move reverse, turn clockwise,turn counterclockwise, etc.), some embodiments of touch control 630 maycontrol the vehicle to move in those directions in other or additionalmanners.

FIG. 11A illustrates a screenshot in which touch control 630 is beingpressed, but is within a dead zone of touch control 630's toucharrangement (e.g., the user presses and moves touch pad 702 within deadzone 714 of FIG. 7, or touches within dead zone 714 of FIG. 7). When ina dead zone, the vehicle 1100 being controlled may be stationary and,therefore, the user interface may not need to show any additional visualindicator as to the vehicle's movement.

FIG. 11B illustrates a screenshot in which touch control 630 is beingpressed and is controlling the vehicle to move forward (e.g., the userpresses and moves touch pad 702 to and/or within touch zone 712A of FIG.7, or touches within touch zone 712A of FIG. 7). When moving forward, avisual indicator 1110 may be displayed to indicate that the hull of thevehicle 1100 is moving forward.

FIG. 11B also illustrates an example where a user may be using cameracontrol 625 to move the camera but keep the weapon pointed at itscurrent position.

FIG. 11C illustrates a screenshot in which touch control 630 is beingpressed and is controlling the vehicle to move forward and turncounterclockwise (e.g., the user presses and moves touch pad 702 of FIG.7 to and/or within touch zone 712H from touch zone 712A or from the deadzone 714; or touches within touch zone 712H of FIG. 7). When movingforward and turning counterclockwise, a visual indicator 1115 may bedisplayed to indicate that the hull of the vehicle 1100 is movingforward and turning counterclockwise.

As illustrated by comparing the views depicted in FIG. 11A with those ofFIG. 11B and FIG. 11C (and other Figures), the turret of the controlledvehicle 1100 may be controlled independently from the hull. The turret(if present) of the vehicle 1100 may be controlled using a differentmethod or type of user control. For example, for some tank vehicles, theturret can be pivoted independently of the hull of the tank with theplayer's view following the direction of the turret or the direction ofthe turret following the player's view. If touch control 630 is used tocontrol the hull of the vehicle 1100, the player may press and drag onanother portion of the screen to change his or her view of the virtualworld, which also controls the orientation of the turret. As discussedherein, the direction of a player's view (as defined by a virtualcamera, which may be moved via an environmental control, camera control625, and/or one or more automated processes that result from other userinteractions) can be changed independently of the direction in which avehicle or other object may travel, so the direction of the player'sview may not necessarily be from the front or rear of the vehicle.

FIG. 11D illustrates a screenshot in which touch control 630 is beingpressed and is controlling the vehicle to turn, pivot or otherwiserotate counterclockwise (e.g., the user presses and moves touch pad 702of FIG. 7 to and/or within touch zone 712G from touch zone 712H or fromthe dead zone 714; or touches within touch zone 712G of FIG. 7). Whenturning counterclockwise or performing a pivot turn in thecounterclockwise direction, a visual indicator 1120 may be displayed toindicate that the hull of the vehicle 1100 is turning counterclockwiseor performing a pivot turn in the counterclockwise direction.

FIG. 11E illustrates a screenshot in which touch control 630 is beingpressed and is controlling the vehicle to move in reverse (e.g., theuser presses and moves touch pad 702 of FIG. 7 to and/or within touchzone 712E from dead zone 714, or touches within touch zone 712E of FIG.7). When moving in reverse, a visual indicator 1125 may be displayed toindicate that the hull of the vehicle 1100 is moving in reverse.

FIG. 11F illustrates a screenshot in which touch control 630 is beingpressed and is controlling the vehicle to move in reverse and turncounterclockwise (e.g., the user presses and moves touch pad 702 of FIG.7 to and/or within touch zone 712D from dead zone 714 or from touch zone712E of FIG. 7; or touches within touch zone 712D of FIG. 7). Whenmoving in reverse and turning counterclockwise, a visual indicator 1130may be displayed to indicate that the hull of the vehicle 1100 is movingin reverse and turning counterclockwise.

FIG. 11G illustrates a screenshot in which touch control 630 is beingpressed and is controlling the vehicle to turn or rotate clockwise(e.g., the user presses and moves touch pad 702 of FIG. 7 to and/orwithin touch zone 712C from touch zone 712B or from the dead zone 714;or touches within touch zone 712C of FIG. 7). When turning clockwise orperforming a pivot turn in the clockwise direction, a visual indicator1135 may be displayed to indicate that the hull of the vehicle 1100 isturning clockwise or performing a pivot turn in the clockwise direction.

FIG. 11H illustrates a screenshot in which touch control 630 is beingpressed and is controlling the vehicle to move forward and turnclockwise (e.g., the user presses and moves touch pad 702 of FIG. 7 toand/or within touch zone 712B from dead zone 714 or from touch zone 712Aof FIG. 7; or touches within touch zone 712B of FIG. 7). When movingforward and turning clockwise, a visual indicator 1140 may be displayedto indicate that the hull of the vehicle 1100 is moving forward andturning clockwise.

FIG. 11I illustrates a screenshot in which touch control 630 is beingpressed and is controlling the vehicle to move in reverse and turnclockwise (e.g., the user presses and moves touch pad 702 of FIG. 7 toand/or within touch zone 712F from dead zone 714 or from touch zone 712Eof FIG. 7; or touches within touch zone 712F of FIG. 7). When moving inreverse and turning clockwise, a visual indicator 1145 may be displayedto indicate that the hull of the vehicle 1100 is moving in reverse andturning clockwise.

In some embodiments, the location of the user's touch within aparticular touch zone may control the vehicle to be controlled faster orslower based on the current position of the user's press. For example,FIG. 11I illustrates a screenshot where a user may be pressing withintouch zone 712F. FIG. 11J also illustrates a screenshot where the usermay be pressing within touch zone 712F. However, as compared to theposition of the user's press of FIG. 11I, the user's press of FIG. 11Jis closer to touch zone 712G. Accordingly, the vehicle illustrated byFIG. 11J may be turning faster than the vehicle illustrated in FIG. 11I.The vehicle illustrated in FIG. 11J may be turning faster because theuser's touch illustrated in FIG. 11J within touch zone 712F is closer totouch zone 712G than the user's touch illustrated in FIG. 11I is withintouch zone 712F.

Additionally, as the user gradually moves his or her finger towards zone712G (but the user's press remains within touch zone 712F), the vehiclemay be controlled to gradually turn faster and gradually move slower inthe reverse direction (until, for example, the user's press is at ornear the border between touch zone 712F and 712G, and the vehicle isbeing controlled to turn at a maximum turning level and cease moving inthe reverse direction). Similarly, as the user gradually moves his orher finger towards zone 712E (but the user's press remains within touchzone 712F), the vehicle may be controlled to gradually turn slower andgradually move faster in the reverse direction (until, for example, theuser's press is at or near the border between touch zone 712F and 712E,and the vehicle is being controlled to move in the reverse direction ata maximum velocity and cease turning). Touch zones 712B, 712D and 712Hmay also be configured with similar functionality (e.g., touch zones712B and 712D may gradually control the vehicle to move forwardfaster/slower and turn slower/faster; touch zone 712H may graduallycontrol the vehicle to move reverse faster/slower and turnslower/faster).

The rate of turning may be indicated by the angle of the visualindicator. For example, by comparing the angle of indicator 1145 andindicator 1148 from FIGS. 11I and 11J, it can be seen that visualindicator 1148 is at a greater angle and, as discussed above, thevehicle illustrated in FIG. 11J is being controlled to turn faster thanthe vehicle illustrated in FIG. 11I.

In some embodiments, a user may be able to press at different pointswithin a touch zone, but the vehicle remains controlled in one direction(and/or turning in a particular fashion). In other words, touch control630 may be configured to control the vehicle to move in one of a set ofdirections (e.g., stationary, forward and reverse) and/or turn in one ofa set of turning directions (e.g., not turning, turning clockwise,turning counterclockwise, pivot-turning, etc.) based on where the useris currently pressing. For example, FIGS. 11K and 11L illustrate theseaspects of user control. In particular, FIG. 11K and FIG. 11L illustratescreenshots in which touch control 630 is being pressed at differentlocations (e.g., the touch pad of touch control 630 in FIG. 11K is beingpressed on or near the right side of touch zone 712A; and the touch padof touch control 630 in FIG. 11L is being pressed on or near the leftside of a touch zone 712A), but the vehicle 1100 remains controlled tomove in the forward direction (as seen by visual indicator 1150).

In some embodiments, touch control 630 may control the vehicle using acombination of the scenarios depicted in FIGS. 11I, 11J, 11K and 11L.For example, touch control 630 may be configured to control the vehiclegradually as described above in connection with FIGS. 11I and 11J whenthe user is pressing within touch zones 712B, 712D, 712F or 712H. Touchcontrol 630 may also be configured to control the vehicle only in theforward direction (e.g., not gradually) when the user is pressing withintouch zone 712A; control the vehicle only in the reverse direction(e.g., not gradually) when the user is pressing within touch zone 712E;control the vehicle to pivot clockwise (e.g., not gradually) when theuser is pressing within touch zone 712C; and control the vehicle topivot counterclockwise (e.g., not gradually) when the user is pressingwithin touch zone 712G. In this manner, touch control 630 may controlthe vehicle in accordance with analog joystick techniques when a userpresses within certain touch zones, but may control the vehicle inaccordance with at least one different technique (e.g., not analog) whenthe user presses within other touch zones. One particular example wherethe touch control 630 may control the vehicle in accordance with analogjoystick techniques when a user presses within certain touch zones, butin accordance with at least one different technique when the userpresses within other touch zones is as follows:

-   -   a. Touch zones 712B, 712D, 712F and 712H may be configured in        accordance with analog techniques. Touch zone 712B may control        the vehicle to gradually turn clockwise and gradually move        forward based on the user's press; touch zone 712D may control        the vehicle to gradually turn clockwise and gradually move        reverse based on the user's press; touch zone 712F may control        the vehicle to gradually turn counterclockwise and gradually        move reverse based on the user's press; and touch zone 712H may        control the vehicle to gradually turn counterclockwise and        gradually move forward based on the user's press.    -   b. Touch zones 712A, 712C, 712E and 712G may be configured in        accordance with techniques different from the analog techniques.        Touch zone 712A may control the vehicle to move forward at a        maximum velocity; touch zone 712C may control the vehicle to        pivot clockwise at a maximum level; touch zone 712E may control        the vehicle to move reverse at a maximum velocity; and touch        zone 712G may control the vehicle to pivot counterclockwise at a        maximum level).

Additionally, a vehicle may be controlled to move at differentvelocities via touch control 630. For example, touch control 630 may bepressed within a touch zone, and the velocity may be determined based onthe distance of the current press location from the perimeter of thetouch control 630 (or the distance from the dead zone). In addition toor alternatively from indicating the direction the vehicle is beingmoved, the visual indicator being displayed may indicate the velocity.FIGS. 11M and 11N illustrate these aspects of user control. Inparticular, FIG. 11M and FIG. 11N illustrate a vehicle 1100 beingcontrolled to move at a reduced velocity (the vehicle of FIG. 11F is oneexample where the vehicle is shown as moving at maximum velocity). Asseen by comparing the visual indicators of FIGS. 11M and 11N (visualindicator 1155 of FIG. 11M and visual indicator 1160 of FIG. 11N), thevehicle of FIG. 11M is moving at a velocity that is less than thevehicle of FIG. 11N. As illustrated, visual indicator 1155 of FIG. 11Mincludes two out of five sub-indicators being highlighted and visualindicator 1160 of FIG. 11N includes three out of five sub-indicatorsbeing highlighted (visual indicator 1110 of FIG. 11B includes five outof five sub-indicators being highlighted).

Visual indicators 1145 and 1148 of FIGS. 11I and 11J also illustrate anexample where the indicators indicate the velocity of the vehicle. Inparticular, FIGS. 11I and 11J illustrate an example where the indicatorsindicate the velocity of the vehicle based on an opacity property of thesub-indicators. Visual indicator 1148 of FIG. 11J includes foursub-indicators at 50% opacity and one sub-indicator (e.g., the one thatis partially obstructed by the vehicle) at 100% opacity. Visualindicator 1145 of FIG. 11I includes five sub-indicators at 100% opacity.Accordingly, the vehicle of FIG. 11I is moving in reverse at a greatervelocity than the vehicle of FIG. 11J.

Additionally, a player may be able to interact with touch control 630 toplace the controlled vehicle into a “cruise” (similar to a car's “cruisecontrol”) mode. For example, in some embodiments, a player may be ableto perform a double tap on the touch pad 702 when the touch pad 702 iswithin one of the touch zones 712A-712H to hold touch pad 702 at thatlocation. With the touch pad 702 being held at that location, thevehicle may be controlled in a direction and a velocity based on thatlocation (e.g., assuming the player performs a double taps the touch padof touch control 630 illustrated in FIG. 11N, the vehicle 1100 maycontinue to move forward and turn clockwise at that velocity until theplayer removes the vehicle from the cruise mode). As another example, insome embodiments, the cruise mode may be entered based on touch pad 702being held at a location for a threshold amount of time (e.g., assumingthe player holds the touch pad of touch control 630 of FIG. 11N at theillustrated location for a time equal to or greater than the thresholdtime, the vehicle may be in the cruise mode and may be controlled tomove in the illustrated direction at the illustrated vehicle until it isremoved from the cruise mode).

A player may remove the vehicle from the cruise mode by dragging touchpad 702 to a different location or by touching anywhere on the touchcontrol (e.g., a tap onto the touch control 630 that causes touch pad702 to snap back to the default position and remove the vehicle from thecruise mode).

One or more embodiments may have additional or other conditions forentering the cruise mode. For example, the player may be able to enterthe cruise mode if they hold or double tap the touch pad 702 withinspecified portions of the touch zones. For example, one embodiment mayenter the cruise mode if the player double taps or holds touch pad 702at an outer edge of the touch zone. In other words, the player maydouble tap or hold touch pad 702 when the vehicle is moving at a maximumvelocity to enter the cruise mode (see e.g., FIG. 11B illustrating oneexample where the user is controlling the vehicle to move forward at amaximum velocity). In some arrangements, a setting may active thatcauses the cruise mode to be automatically triggered when a player stopspressing on the touch control 630. For example, when a user moves touchpad 702 and removes his or her finger, the touch pad may remain at thelast location of the player's press and, accordingly, the vehicle maycontinue to be controlled in accordance with the touch zone of that lastlocation (e.g., if the user last pressed in zone 712A, the vehicle maycontinue to be controlled to move forward).

As illustrated throughout the above examples, touch control 630 is shownas being placed at a fixed location in the user interface and, inparticular, in the lower left-hand corner of the user interface. Touchcontrol 630 may, in some embodiments, be placed at a different locationin the user interface. FIG. 11O illustrates a screenshot in which touchcontrol 630 is placed at a location in the right side of the userinterface. The location where the touch control 630 is placed in theuser interface may be in accordance with (or based on) a setting that,in some variations, a player may select via a settings or options menu(e.g., a menu accessible by pressing menu control 608). Additionally, aplayer may be able to customize the location at which the touch control630 is placed via a menu setting (e.g., enter in a screen coordinate) orother setting (e.g., enter a touch control placement mode that allowsthe player to drag touch control 630 to a desired screen location andthen accept that location).

Additionally, as illustrated throughout the above example, a visualindicator may be displayed that indicates the direction and velocity ofthe controlled vehicle. In some embodiments, the visual indicator maychange color when the tank is turning (e.g., turn green when turningclockwise, turn yellow when turning counterclockwise, turn white whenmoving forward or reverse). For example, one color may be used if thevehicle is moving forward but a different color may be used if thevehicle is moving in reverse. For example, visual indicator 1110 and1115 (and others) may be colored green, while indicator 1120 may becolored green. In some arrangements, performing a pivot turn, as shownin FIG. 11E may be given its own color (e.g., blue) or may be given oneof the colors for forward or reverse (e.g., colored green or yellow).

Touch control 630 is only one type of touch control for controlling avehicle or other object in a virtual world. In particular, touch control630 is visually designed to simulate the appearance of an analog stickof a gamepad and, in some embodiments, can be placed in a fixed positionwithin the user interface. A different type of touch control, however,can be used in some variations and it may be designed differently fromtouch control 630. For example, in some embodiments, the different typeof touch control may be dynamically placed within the user interfacebased on a player's touch or press. Described herein is a type of usercontrol that can be referred to as a “dissected” or “split” touchcontrol (the terms “dissected” and “split” may be used interchangeablyherein). The dissected touch control will be discussed herein as havinga visual appearance different from the touch control 630 and as beingable to be dynamically placed within the user interface (as opposed tobeing placed in a fixed position).

Some embodiments may combine aspects of touch control 630 with aspectsof the dissected touch control to create a type of touch controlcontemplated by the present disclosure. For example, the visualappearance of the dissected touch control could be combined with thefixed position aspect described in the above examples using touchcontrol 630. As another example, the dynamic placement aspect of thedissected touch control could be combined with the visual appearance oftouch control 630.

Additionally, some embodiments may include both types of touch control.In one or more of such embodiments, the player may be able to selectbetween which type of touch control is used via a setting of a settingsor options menu (e.g., a menu accessible via menu control 608).

In some embodiments, the dissected touch control may be visuallydifferent than touch control 630, but may use the same or similar touchzone arrangements as discussed above in connection with, for example,FIGS. 7 and 9, among others. As one particular example, such a dissectedtouch control may use features related to changing or adjusting thetouch zone arrangements that were discussed above in connection withtouch control 630. FIG. 12 illustrates an example diagram of touch zonesfor controlling an object of a virtual world in accordance with (orbased on) a dissected touch control and other aspects described herein.As illustrated in FIG. 12, touch zone arrangement 710 may be used forthe dissected touch control (e.g., the same touch zone arrangement asdiscussed above with respect to FIG. 7).

Dissected touch control may be defined by dissected control elements1210, 1220, 1230 and 1240. Each of the dissected control elements 1210,1220, 1230 and 1240 may be associated with one or more of the touchzones from touch zone arrangement 710. In FIG. 12, the associations areindicated by dashed lines. For example, dissected control element 1210is illustrated as being associated with touch zones 712A, 712B and 712H.Dissected control element 1220 is illustrated as being associated withtouch zone 712C. Dissected control element 1230 is illustrated as beingassociated with touch zones 712D, 712E and 712F. Dissected controlelement 1240 is illustrated as being associated with touch zone 712G.

In some arrangements, only one of the dissected touch control elementsis displayed at a time. To display a particular element, a player mayperform a touch gesture (e.g., provide gesture input via the touchsensor). For example, in some arrangements, the dissected touch controlmay be able to be dynamically placed. Examples of the dynamic placementof the dissected touch control will be discussed below. To summarize oneexample of the dynamic placement, a player may be able to touch withinthe left side of a display screen to begin the gesture. When the playerfirst presses the screen, the location of the touch may define thecenter location of the touch zone arrangement 710 (e.g., where thelocation of the center of the dead zone 714 is placed on the displayscreen). The user may then move his or her finger while pressed in adirection of a touch zone. Based on which touch zone the user's fingerpresses, a dissected touch control may be displayed (e.g., at thecurrent location of the user's finger). In other words, the user isable, via his or her initial touch and/or the gesture performed, toselect which dissected touch control element is displayed and/or selectthe location at which the dissected touch control element is placedwithin the user interface.

With respect to FIG. 12, dissected touch control element 1210 may bedisplayed in response to the user performing a gesture to any of thetouch zones 712A, 712B or 712H. In some variations, the user may presswithin the display screen at a location. This press may result in thedead zone 714 being anchored to that location The user may then drag hisor her finger into the touch zone 712A, 712B or 712H to cause dissecteddisplay element 1210 to be displayed.

Dissected touch control element 1220 may be displayed in response to theuser performing a gesture from dead zone 714 and to touch zone 712C. Insome variations, the user may press within the display screen at alocation. This press may result in the dead zone 714 being anchored tothat location. The user may then drag his or her finger into the touchzone 712C to cause dissected display element 1220 to be displayed.

Dissected touch control element 1230 may be displayed in response to theuser performing a gesture from dead zone 714 and to any of touch zones712D, 712E and 712F. In some variations, the user may press within thedisplay screen at a location. This press may result in the dead zone 714being anchored to that location. The user may then drag his or herfinger into the touch zone 712D, 712E or 712F to cause dissected displayelement 1230 to be displayed.

Dissected touch control element 1240 may be displayed in response to theuser performing a gesture from dead zone 714 and to touch zone 712G. Insome variations, the user may press within the display screen at alocation. This press may result in the dead zone 714 being anchored tothat location. the user may then drag his or her finger into the touchzone 712G to cause dissected display element 1240 to be displayed.

In addition to the touch control elements, the dissected touch controlmay include a position indicator 1250, which indicates the currentposition of the user's press. As illustrated in FIG. 12, touch elements1210 and 1230 include a position indicator 1250.

When a particular element is displayed, a player may be able to drag hisor her finger within the associated touch controls in order to controlthe vehicle to perform one of a set of movements. For example, dissectedtouch control element 1210 may be used to control a vehicle to moveforward, move forward and turn counterclockwise, or move forward andturn clockwise. As the user moves his or her finger throughout the touchzones 712A, 712B or 712H, the vehicle may be controlled such that itgradually changes from moving and/or turning in those directions (e.g.,as the user moves from touch zone 712H to 712A, the vehicle may becontrolled such that it slows the turning rate until it ceases to turnand is only moving forward). Dissected touch control element 1220 may beused to control a vehicle to turn clockwise. Dissected touch controlelement 1230 may be used to control a vehicle to move in reverse, movein reverse and turn clockwise, or move in reverse and turncounterclockwise. As the user moves his or her finger throughout thetouch zones 712D, 712E or 712F, the vehicle may be controlled such thatit gradually changes from moving and/or turning in those directions(e.g., as the user moves from touch zone 712F to 712D, the vehicle maybe controlled such that it slows the turning rate until it ceases toturn and is only moving in reverse). Dissected touch control element1240 may be used to control a vehicle to turn counterclockwise.\

FIGS. 13A-13N illustrate example screenshots of a video game userinterface implementing different aspects of user control in accordancewith one or more aspects described herein, and each screenshot depictsone or more aspects related to the dissected touch control. Some aspectsof the interface depicted in FIGS. 13A-13N may include the same orsimilar controls as the user interface illustrated in the above examplesof FIGS. 6, 8 and 11A-11N. For example, the user interface of FIG. 13Amay include one or more of the same controls as the user interfaceillustrated in FIG. 6, including, menu control 608 and zoom control 628.However, some controls may be different. For example, the interface ofFIGS. 13A-13N includes a single fire control as compared to the two firecontrols included in FIG. 6.

FIG. 13A illustrates an example screenshot showing a dissected touchcontrol element being displayed. In particular, dissected touch controlelement 1210 is displayed. As illustrated, dissected touch controlelement 1210 is being used to control vehicle 1300 to move forward,which is indicated to the user via visual indicator 1302.

Vehicle 1300 may be controlled via the dissected touch control to movein similar directions and/or turn in particular directions similarly tohow a vehicle may be controlled via the touch control 630. The visualindicators that are displayed may also be similar to those discussedwith respect to touch control 630 in FIGS. 11A-11N. For example, FIGS.13B-13G illustrate example screenshots showing dissected touch controlelement causing vehicle 1300 to move and/or turn in various directionsand at particular velocities. The example screenshots of FIGS. 13B-13Galso show a visual indicator that provides an indication as to thedirection the vehicle is moving and/or turning, and, in someembodiments, an indication as to the velocity of the vehicle.

FIG. 13B depicts vehicle 1300 being controlled to move in reverse andturn clockwise via a player's interaction with dissected touch controlelement 1230. Visual indicator 1305 indicates vehicle 1300 is moving inreverse and turning clockwise at maximum velocity.

FIG. 13C depicts vehicle 1300 being controlled to turn clockwise via aplayer's interaction with dissected touch control element 1220. Visualindicator 1310 indicates vehicle 1300 is turning clockwise at maximumvelocity.

FIG. 13D depicts vehicle 1300 being controlled to turn counterclockwisevia a player's interaction with dissected touch control element 1240.Visual indicator 1315 indicates vehicle 1300 is turning counterclockwiseat maximum velocity.

FIG. 13E depicts vehicle 1300 being controlled to move in reverse via aplayer's interaction with dissected touch control element 1230. Visualindicator 1320 indicates vehicle 1300 is turning counterclockwise atmaximum velocity.

FIG. 13F depicts vehicle 1300 being controlled to move forward and turnclockwise via a player's interaction with dissected touch controlelement 1210. Visual indicator 1325 indicates vehicle 1300 is movingforward and turning counterclockwise at maximum velocity.

FIG. 13G depicts vehicle 1300 being controlled to move forward via aplayer's interaction with dissected touch control element 1210. Visualindicator 1330 indicates vehicle 1300 is moving forward at maximumvelocity.

In some embodiments, which element of the dissected touch control isdisplayed depends on which touch zone the user's finger is currentlypressed within. For example, touch control element 1210 may be displayedwhen the user presses within touch zone 712H, 712A or 712B, but touchcontrol 1230 may be displayed when the user presses within touch zone712D, 712E or 712F. However, in some alternative embodiments, after aparticular element is displayed and while the player's finger remainspressed to the screen, the displayed element may remain displayed. Whilethe player's finger remains pressed within one of the associated touchzones, the displayed element may be highlighted (e.g., in a highlightedstate). In such embodiments, the elements of FIG. 12 may each be in ahighlighted state. However, if the player moves his or her finger to oneof the touch zones that is not associated with the displayed element,then the displayed element may be unhighlighted (e.g., in anunhighlighted state). FIG. 13H illustrates an example screenshot showinga dissected touch control element in an unhighlighted state (e.g., ascompared to FIG. 12, dissected touch control element 1220 of FIG. 13A isnot highlighted). In particular, FIG. 13H depicts dissected touchcontrol element 1220 in an unhighlighted state in response to a playerhaving his or her finger in touch zone 712A, 712B, 712D, 712E, 712F,712G or 712H. The dissected touch control element 1220 may return to thehighlighted state when the player moves his or her finger back intotouch zone 712C.

As discussed above, the player may be able, via his or her initial touchand/or the gesture performed, to select which dissected touch controlelement is displayed and/or select the location at which the dissectedtouch control element is placed within the user interface. FIGS. 13I and13J illustrate screenshots where the dissected touch control is placedat different locations based on a player's initial touch. As illustratedin FIGS. 13I and 13J, the player may be able to press at any locationwithin the area defined by area 1340. The screenshots of FIGS. 13I and13J show a scenario where a presses first presses at location 1350 andperforms gesture 1355 to display dissected touch control element 1210.Location 1350, gesture 1355 and display of dissected touch controlelement 1210 are depicted in FIG. 13I. After controlling vehicle 1390for a period of time, the user may stop pressing on the screen. This maycause dissected touch control element 1210 to disappear (e.g., not bedisplayed). The player may subsequently press at location 1360 andperform gesture 1365 to display dissected touch control element 1210again, but at a different screen location. Location 1360, gesture 1365and display of dissected touch control element 1210 at the differentlocation are depicted in FIG. 13J.

In some embodiments, when the player is not pressing on the screen, noneof the dissected touch control elements may be displayed. FIG. 13Killustrates a screenshot where none of the dissected touch controlelements are displayed in response to the user not pressing within area1340. The user, however, may be pressing in other portions of the screen(e.g., pressing fire control to fire on the enemy, press and drag afinger to control the turret of the tank or change the viewing angle ofthe virtual world, etc.).

In some embodiments, the location where area 1340 is placed (e.g., thearea where a player may press and/or perform gestures to display andinteract with the dissected touch control and its elements) in the userinterface may be in accordance with (or based on) a setting that, insome variations, a player may select via a settings or options menu.FIGS. 13I, 13J and 13K, among others, depict a user interface in whichthe area 1340 is placed on the left side of the user interface. FIG. 13Lillustrates a screenshot where area 1340 is placed on the right side ofthe user interface and the player is using the dissected touch controlto move a vehicle forward and turn counterclockwise.

As the user moves his or her finger throughout the touch zones, thevehicle may be controlled such that it gradually changes from movingand/or turning in a particular direction. For example, as the user moveshis or her finger from touch zone 712B to 712A, the vehicle may becontrolled such that it gradually decreases the rate at which thevehicle is turning clockwise. FIG. 13F illustrates the vehicle turningclockwise and moving forward (e.g., the user may be pressing his fingerwithin touch zone 712B). FIG. 13M depicts the vehicle turning clockwiseat a slower rate. Comparing the depictions of FIG. 13F to FIG. 13M, itcan be seen that the user may be pressing closer to touch zone 712A inFIG. 13M than in FIG. 13F (compare the location of position indicator1250 in FIGS. 13F and 13M, which indicates where the user is currentlypressing). Comparing the visual indicators of FIGS. 13F and 13M, it canalso be seen that the vehicle is turning at a reduced rate. Indeed,visual indicator 1325 of FIG. 13F is closer to forming a perpendicularangle than visual indicator 1370 of FIG. 13M.

In some embodiments, the video game user interface may include differentviewing modes, such as a zoom or sniper mode, in addition to a defaultviewing mode. FIG. 13N illustrates a screenshot where the dissectedtouch control is used while in a different viewing mode. As illustratedin FIG. 13N, a representation of the vehicle being controlled (e.g.,vehicle 1300) is being shown in this mode to indicate the currentorientation of the vehicle's chassis 1372, the current orientation ofthe vehicle's turret 1374, and visual indicator 1376 that indicates thedirection and/or speed of travel for the vehicle. Visual indicator 1376indicates the vehicle is being controlled to move in reverse and turnclockwise at a maximum velocity.

Discussed above are various examples where a player is able to control avehicle or other object via a particular type of touch control, such astouch control 630 or a dissected touch control. FIG. 14 illustrates anexample method of providing a user interface to a virtual world thatincludes at least two types of touch control.

At step 1401, a computing device may receive settings for touch control.For example, a player may interact with a generated menu to selectvarious settings related to user control of objects or vehicles. Inparticular, a menu may present an option for a player to select the typeof touch control and the placement of the touch control. One setting mayallow the player to select between a first type or a second type oftouch control (e.g., select between touch control 630 and the dissectedtouch control, which has elements 1210, 1220, 1230 and 1240). Anothersetting may allow the player to select the placement of the touchcontrol (e.g., select between placing the touch control on the left sideof the screen or the right side of the screen; select which hand isdominant for the player, which results in the touch control being placedon the side of the screen nearest the dominant hand). In somevariations, the computing device may receive default settings that theplayer has not selected (e.g., default settings that are provided with afresh install of the video game), which may include, for example, a sizeand screen position for the touch control.

At step 1403, a computing device may generate a virtual world and userinterface in accordance with (or based on) the settings. For example,the virtual world may be similar to any of the virtual worlds orenvironments depicted in the various screenshots discussed throughoutthis disclosure. The user interface may include one or more (or all) ofthe controls discussed herein. Additionally, the user interface may,based on the settings of step 1401, include a touch control of aparticular type (e.g., touch control 630 or dissected touch control).The touch control may be configured with a touch zone arrangement, suchas, for example touch zone arrangement 710.

At step 1405, the computing device may control a vehicle or object ofthe virtual world based on a first player interaction with the touchcontrol. For example, the user may perform any of the variousinteractions with touch control 630 or dissected touch control discussedin the examples of this disclosure. As the player interacts with thetouch control, the vehicle may be controlled to move through the virtualworld in particular directions and/or at particular velocities. As thevehicle or object moves in a direction and/or at a velocity, a visualindicator may be displayed that indicates the direction and/or velocitythe vehicle or object is travelling (as discussed in the variousexamples described throughout this disclosure).

At step 1407, the computing device may, responsive to conditions of thevirtual world or a player interaction with the user interface, adjust orchange the touch control. For example, if the viewing mode changes, thetouch zone arrangement of the touch control may be changed or adjusted(see FIG. 9). As another example, if the player presses within aparticular touch zone, the dead zone of the touch zone arrangement maybe decreased in size and/or one or more touch zones may be increased insize (see FIG. 10).

At step 1409, the computing device may control the vehicle or objectbased on another (e.g., a second) player interaction with the touchcontrol. Similar to step 1405, the user may perform any of the variousinteractions with touch control 630 or dissected touch control discussedin the examples of this disclosure. As the player interacts with thetouch control, the vehicle may be controlled to move through the virtualworld in particular directions and/or velocities. As the vehicle orobject moves in a direction and/or at a velocity, a visual indicator maybe displayed that indicates the direction and/or velocity the vehicle orobject is travelling (as discussed in the various examples describedthroughout this disclosure).

However, with respect to the second player interaction, the touchcontrol, as a result of step 1407, may be using or implementing achanged touch zone arrangement (e.g., zone arrangement 910 or 1010).Accordingly, the second player interaction may result in the vehiclebeing controlled differently than if the previous zone arrangement wasused (e.g., zone arrangement 710). For example, with respect to zonearrangements 710 and 910, as illustrated in FIG. 9, if the second playerinteraction of step 1409 is within zone 912A, it may cause the vehicleto move forward in the virtual world. However, if the second playerinteraction was performed when the touch control used touch zonearrangement 710 (e.g., during step 1405), it may have caused the vehicleto move forward and turn counterclockwise (e.g., because it would havebeen within zone 712H) or move forward and turn clockwise (e.g., becauseit would have been within zone 712B).

The above examples described various types of touch controls. Additionaltypes of controls may relate to user control over one or more statusesor conditions a vehicle or object may receive as it travels throughoutthe virtual world. FIGS. 15A-15H illustrate example screenshots of auser interface that includes aspects related to user control overvehicle conditions or statuses. With respect to the examples discussedthroughout FIGS. 15A-15H, the various conditions or statuses that avehicle may receive as it travels throughout the virtual world include adamage status, a crew injury status and an equipment fire status. A usermay interact with a repair control, a first aid control, or fireextinguisher control to cure or remove these statuses. The repaircontrols, first aid control and fire extinguisher will be referredcollectively as “vehicle condition controls” or an “object conditioncontrols.”

FIG. 15A illustrates an example screenshot of a user interface in whicha user may interact with vehicle condition controls when the vehicledoes not have any conditions. In some embodiments, the user is unable tointeract with the vehicle condition controls until the vehicle 1500takes damage or has one of the statuses.

As illustrated in FIG. 15A, the user interface includes repair control1510, first aid control 1520, fire extinguisher control 1530, andvehicle condition enable toggle control 1540. Other controls arepossible and could be substituted for one of the controls (or added tothe user interface) including, for example, a combination control thatis able to remove multiple types of statuses (e.g., a combinationcontrol that is able to remove an equipment fire status, a damage statusand a crew injury status). A similar type of control could be used forother controls in the user interface. For example, ammo control 1550,which allows a user to change ammo types loaded into the vehicle'sweapon system, uses a control similar to the condition controls. Otherviewing modes may also include the condition controls and messagesdepicted throughout FIGS. 15A-15H.

In some embodiments, each of the vehicle condition controls may need tobe placed into an enabled mode or state before the associated status canbe removed. As illustrated in FIG. 15A, all status controls are in adisabled mode or state (mode and state can be used interchangeably).FIG. 15B illustrates the condition controls as being in an enabled mode(e.g., repair control 1510, first aid control 1420 and fire extinguishercontrol 1530 may be extended to indicate they are enabled). Whenenabled, repair control 1510, first aid control 1420 and fireextinguisher control 1530 may be extended to indicate they are enabled.To enable/disable the condition controls, the user may be able to pressvehicle condition enable toggle control 1540 to toggle between theenabled and disabled modes. Additionally, when a vehicle gains aparticular condition, the associated control may be automaticallyenabled.

When a user presses a control that is in the enabled mode, the conditionassociated with the control may be attempted to be removed. For example,when repair control 1510 is pressed by the user, an attempt may be madeto fix damage to the vehicle or fix a broken vehicle component (remove adamage status). When first aid control 1520 is pressed by the user, anattempt may be made to treat injured vehicle crew (remove a crew injurystatus). When fire extinguisher control 1530 is pressed by the user, anattempt may be made to put out a fire detected within the vehicle(remove an equipment fire status). In some embodiments, even if thevehicle does not have the status upon the user pressing the enabledcontrol, the control may remain in the enabled mode. If the vehicle doesnot have the status, a message may be displayed indicating that thevehicle does not have the corresponding status.

FIG. 15C illustrates an example screenshot where the first aid control1520 has been placed in the active mode and pressed by the user when thevehicle 1500 does not have a crew injury status, which causes message1535 to be displayed.

FIG. 15D illustrates an example screenshot where the fire extinguishercontrol 1530 has been placed in the active mode and pressed by the userwhen the vehicle 1500 does not have an equipment fire status, whichcauses message 1540 to be displayed.

FIG. 15E illustrates an example screenshot where the repair control 1510has been placed in the active mode and pressed by the user when thevehicle 1500 does not have a repair status, which causes message 1545 tobe displayed.

When a vehicle receives a status, the user interface may include astatus indicator to indicate which status the vehicle currently has.FIG. 15F illustrates an example screenshot with a user interface thatincludes a status indicator. In particular, FIG. 15F depicts a userinterface that includes visual status indicator 1550 that indicates thevehicle has a damage status (e.g., to the chassis) at 1555.

As also depicted by FIG. 15F, repair control 1510 is in the disabledmode. Accordingly, the user may, in some embodiments, be required toplace the control in the active mode (by pressing toggle control 1540)prior to removing the damage status. Visual status indicator 1550 may beremoved from the user interface when the damage status is removed and ifthe vehicle has no other statuses.

Additionally, in some embodiments, when the damage status is removed,the repair control 1510 may revert to the disabled mode, in someembodiments. In others, the repair control 1510 may remain in theenabled mode. If the repair control is linked to a consumable (e.g., aconsumable that limits the number of damage statuses that can beremoved), a consumable will be removed or decremented and, if the playeris left without any consumables for the repair control 1510, the repaircontrol 1510 may be disabled and the icon for the repair control 1510may be removed from the user interface. FIG. 15G illustrates ascreenshot with a user interface including a repair control 1510 that isdisabled after removing a damage status (message 1560 is being displayedto show successful removal of the damage status). Resulting from theremoval of the damage status, the user has no more consumables allowingfor removal of the damage status; thus, repair control 1510 is displayedwithout an icon. Without a consumable, the player may be unable to movethe repair control 1510 into the enabled mode (and thus is unable toremove a damage status).

Some statuses or conditions received by the vehicle may affect theperformance of the vehicle. For example, FIG. 15H illustrates ascreenshot in which a vehicle 1500 has a damage status (as indicated byvisual status indicator 1565 at 1560, and message 1570) that indicatesthe gun is too damaged to fire a shot. The player, accordingly, will beunable to fire the gun until the status is removed (e.g., by pressingrepair control 1510 when it is in the enabled mode). As also illustratedin FIG. 15H, the associated control may be automatically placed in theenabled mode responsive to the vehicle gaining the associated status. Inparticular, FIG. 15H illustrates repair control 1510 in the enabled modewhile fire extinguisher control 1520 and first aid control 1530 remainin the disabled mode. Repair control 1510 may have been placed in theenabled mode in response to the damaged gun status, which resulted fromthe gun taking a particular amount of damage.

Discussed above are various examples where a player is able to control avehicle or other object to remove vehicle conditions or statuses via,for example, one or more vehicle condition controls. FIG. 16 illustratesan example method of providing a user interface for a virtual world thatincludes one or more user controls over vehicle conditions or statuses.

At step 1601, a computing device may receive a selection of a vehicleand/or one or more status consumables. For example, a player may be ableto interact with a menu to select the type of vehicle he or she willcontrol in the virtual world (e.g., select the type or model of tank).The player may also be able to select one or more consumables that willallow them to remove one or more types of vehicle statuses. The types ofconsumables a player can select may be dependent on the type of vehicleselected (e.g., some tanks may be able to use a fire extinguisher, butothers may not be able to use a fire extinguisher, etc.).

At step 1603, the computing device may generate a virtual world and userinterface in accordance with (or based on) the selection of step 1601.For example, any of the user interfaces and virtual worlds describedherein may be generated. The user interface may also include one or morevehicle condition controls, as discussed in connection with FIGS.15A-15H (e.g., a fire extinguisher control, a repair control, a firstaid control, a combination status control, etc.). In some arrangements,the types of vehicle condition controls displayed in the user interfacemay be dependent on the type of vehicle selected (e.g., if the selectedtank can use a fire extinguisher, the user interface may include a fireextinguisher control). In others, the types of vehicle conditioncontrols displayed in the user interface may be dependent on theconsumables selected by the player (e.g., if the user has a combinationstatus control, the user interface may include a combination statuscontrol).

At step 1605, the computing device may responsive to one or moreinteractions with the virtual world, cause the vehicle to gain a vehiclestatus. Examples of the various vehicle statuses were discussed above inconnection with FIGS. 15A-15H. In one example, the vehicle may gain adamage status after receiving a particular amount of damage. The damagestatus may further be to a particular component of the vehicle, such asthe gun, chassis, motor, treads, weapon system, and the like.

At step 1607, the computing device may, responsive to a playerinteraction with a condition control, remove the vehicle status. Forexample, if the vehicle receives a damage status and the repair control1510 is enabled and pressed by the user, the vehicle status may beremoved (e.g., over a period of time or instantaneously). Additionalresponses to removal of a vehicle condition were discussed above inconnection with FIGS. 15A-15H and include, for example, displaying amessage that the status was removed, decrementing of a consumableassociated with the condition control and placing the condition controlinto the disabled mode.

While the steps of the methods illustrated throughout this disclosureare described and shown in a particular order, these steps may berearranged and performed in any order.

The present aspects have been described in terms of preferred andillustrative embodiments. Numerous other embodiments, modifications andvariations within the scope and spirit of the appended claims will occurto persons of ordinary skill in the art from a review of thisdisclosure.

1. A method, comprising: generating a user interface for a virtual worldthat includes a touch control having a touch zone arrangement in which auser may press to control an object of the virtual world; and changing,responsive to one of a condition of the virtual world and a userinteraction with the user interface, the touch control to have adifferent touch zone arrangement.
 2. The method of claim 1, wherein theone of the condition of the virtual world and the user interaction withthe user interface includes a change from a first viewing mode to asecond viewing mode.
 3. The method of claim 1, wherein the one of thecondition of the virtual world and the user interaction with the userinterface the user pressing within a touch zone of the touch zonearrangement.
 4. The method of claim 1, wherein changing the touchcontrol to have the different touch zone arrangement includes increasinga size of a touch zone of the touch zone arrangement.
 5. The method ofclaim 1, wherein changing the touch control to have the different touchzone arrangement includes decreasing a size of a dead zone of the touchzone arrangement.
 6. The method of claim 1, further comprising:receiving, from the user, settings that specify a type of the touchcontrol and the placement of the touch control; and wherein generatingthe user interface comprises generating the touch control based on thesettings.
 7. The method of claim 1, wherein the touch control comprisesa plurality of touch control elements of which only one is displayed ata given time.
 8. The method of claim 1, wherein the touch controlcomprises a dissected touch control.
 9. The method of claim 1, whereinthe user interface includes a visual indicator indicating a directionand velocity the object is moving.
 10. The method of claim 9, furthercomprising: displaying the visual indicator if in a first viewing mode;changing from the first viewing mode to a second viewing mode; anddisplaying another visual indicator indicating the direction andvelocity the object is moving if in the second viewing mode.
 11. Amethod, comprising: receiving a first gesture input from a user;responsive to receiving the first gesture input, generating, as part ofa user interface for a virtual world, a first touch control element of atouch control, the first touch control element being associated with oneor more first touch zones of the touch control in which the user maypress to control an object of the virtual world; receiving first pressinput from the user within the one or more first touch zones;controlling the object based on the first press input; receiving asecond gesture input from the user; responsive to receiving the secondgesture input, generating, as part of the user interface, a second touchcontrol element of the touch control, the second touch control elementbeing associated with one or more second touch zones of the touchcontrol; receiving second press input from the user within the one ormore second touch zones; and controlling the object based on the secondpress input.
 12. The method of claim 11, further comprising: changing,responsive to one of a condition of the virtual world and userinteraction with the user interface, the touch control to have adifferent touch zone arrangement; and wherein the first touch controlelement provides a visual indication of one or more movements in whichthe user is able to control the object while the first touch controlelement is displayed, and wherein the steps of receiving first pressinput from the user within the one or more first touch zones andcontrolling the object based on the first press input are performedwhile the first touch control element is displayed.
 13. The method ofclaim 12, wherein the one of the condition of the virtual world and userinteraction with the user interface includes a change from a firstviewing mode to a second viewing mode, and wherein the first touchcontrol element and the second touch control element are part of aplurality of touch control elements of which a maximum of one element isdisplayed at a given time.
 14. The method of claim 12, wherein the oneof the condition of the virtual world and user interaction with the userinterface includes the user pressing within the one or more first touchzones or the one or more second touch zones.
 15. The method of claim 12,wherein changing the touch control to have the different touch zonearrangement includes increasing a size of at least one of the one ormore first touch zones or the one or more second touch zones.
 16. Themethod of claim 12, wherein changing the touch control to have thedifferent touch zone arrangement includes decreasing a size of a deadzone.
 17. A method, comprising: receiving a first gesture input from auser; responsive to receiving the first gesture input, generating, aspart of a user interface for a virtual world, a first touch controlelement of a dissected touch control at a first location; controlling anobject of the virtual world based on the first touch control element;receiving a second gesture input from the user; responsive to receivingthe second gesture input, generating, as part of the user interface, asecond touch control element of the dissected touch control at a secondlocation different from the first location; and controlling the objectbased on the first touch control element.
 18. The method of claim 17,changing, responsive to one of a condition of the virtual world and userinteraction with the user interface, the touch control to have adifferent touch zone arrangement
 19. The method of claim 18, wherein theone of the condition of the virtual world and user interaction with theuser interface includes (a) a change from a first viewing mode to asecond viewing mode or (b) the user pressing within one or more touchzones associated with the first touch control element or the secondtouch control element.
 20. The method of claim 18, wherein changing thetouch control to have the different touch zone arrangement includes (a)increasing a size of one or more touch zones associated with the firsttouch control element or the second touch control element or (b)decreasing a size of a dead zone.
 21. The method of claim 11, whereinreceiving the first gesture input from the user comprises: receivingsignals from a touch sensor as the user drags or swipes across a touchscreen associated with the touch sensor; and determining that the firstgesture input is being performed based on the signals.